dark-mode-toggle.slider::part(toggleLabel) {
  display: inline-block;
  position: relative;
  height: calc(var(--dark-mode-toggle-icon-size, 1rem) * 2);
  width: calc(var(--dark-mode-toggle-icon-size, 1rem) * 3.5);
  background-color: #b7bbbd;
  border-radius: var(--dark-mode-toggle-icon-size, 1rem);
  transition: 0.4s;
}

dark-mode-toggle.slider[mode='dark']::part(toggleLabel) {
  background-color: #4e5255;
}

dark-mode-toggle.slider::part(toggleLabel)::before {
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: calc(var(--dark-mode-toggle-icon-size, 1rem) * 0.25);
  left: calc(var(--dark-mode-toggle-icon-size, 1rem) * 0.25);
  height: calc(var(--dark-mode-toggle-icon-size, 1rem) * 1.5);
  width: calc(var(--dark-mode-toggle-icon-size, 1rem) * 1.5);
  border-radius: 100%;
  box-shadow:
    0 0.15em 0.3em rgb(0 0 0 / 15%),
    0 0.2em 0.5em rgb(0 0 0 / 30%);
  background-color: #fff;
  color: #333;
  transition: 0.4s;
  content: '';
  background-position: center;
  background-size: var(--dark-mode-toggle-icon-size, 1rem);
  background-image: var(--dark-mode-toggle-light-icon, url('sun.svg'));
  box-sizing: border-box;
}

dark-mode-toggle.slider[mode='dark']::part(toggleLabel)::before {
  left: calc(100% - var(--dark-mode-toggle-icon-size, 1rem) * 1.75);
  border-color: #000;
  background-color: #ccc;
  color: #000;
  background-size: var(--dark-mode-toggle-icon-size, 1rem);
  background-image: var(--dark-mode-toggle-dark-icon, url('moon.svg'));
  filter: var(--dark-mode-toggle-icon-filter, invert(100%));
  box-shadow: 0 0.5px hsl(0deg 0% 100% / 16%);
}

dark-mode-toggle.slider::part(toggleLabel)::after {
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: calc(var(--dark-mode-toggle-icon-size, 1rem) * 0.25);
  left: calc(100% - var(--dark-mode-toggle-icon-size, 1rem) * 1.75);
  height: calc(var(--dark-mode-toggle-icon-size, 1rem) * 1.5);
  width: calc(var(--dark-mode-toggle-icon-size, 1rem) * 1.5);
  border-radius: 100%;
  color: #333;
  content: '';
  background-position: center;
  background-size: var(--dark-mode-toggle-icon-size, 1rem);
  background-image: var(--dark-mode-toggle-dark-icon, url('moon.svg'));
  background-repeat: no-repeat;
  box-sizing: border-box;
  opacity: 0.5;
}

dark-mode-toggle.slider[mode='dark']::part(toggleLabel)::after {
  left: calc(var(--dark-mode-toggle-icon-size, 1rem) * 0.25);
  background-image: var(--dark-mode-toggle-light-icon, url('sun.svg'));
  filter: var(--dark-mode-toggle-icon-filter, invert(100%));
}
